/*Correccion de implementacion*/
use Data
go

DECLARE @PROYECTO INT = 3,
		@cod_id int = 2006968

-- Inserto la implantacion
INSERT INTO DATA.InventarioVentas.ProductoInventariableProductoNoInventariable (IdProductoInventariable,IdProductoNoInventariable,UsuarioIngMod,FechaIngMod,PrecioContado,PrecioLista,PrecioListaAnterior,Principal,Web,Especial,IdEstado,IdTipoImplantacion,ValorImpuesto)
select a.IdProductoInventariable,c.IdProductoNoInventariable,'SISTEMA',GETDATE(),0,0,0,1,0,0,'A',C.IdTipoImagen,0 from data.Contrato.ContratoVenta  b
join data.Contrato.VentaProducto  a 
  on a.IdContratoVenta  = b.IdContratoVenta and a.IdProductoInventariable is not null
join data.Contrato.VentaProducto c
  on b.IdContratoVenta  = c.IdContratoVenta and c.IdProductonoInventariable is not null
 where IdProyecto = @PROYECTO
   and a.IdProductoInventariable not in  (select IdProductoInventariable  from data.InventarioVentas.ProductoInventariableProductoNoInventariable)
and b.IdEstadoContrato not in ('A','X','PC')
and b.IdContratoVenta = @cod_id
order by 1


-- Actualizo el modelo en la tabla de productocosntruccion para el estado de construccion
update pc set idproductonoinventariable = vp1.idproductonoinventariable
from data.Contrato.ContratoVenta cv inner join data.Contrato.VentaProducto vp on cv.IdContratoVenta = vp.IdContratoVenta and vp.IdProductoInventariable is not null
inner join data.Contrato.VentaProducto vp1 on cv.IdContratoVenta = vp1.IdContratoVenta and vp1.IdProductoNoInventariable is not null
inner join data.inventarioventas.ProductoConstruccion pc on pc.IdProductoInventariable = vp.IdProductoInventariable 
where cv.IdContratoVenta = @cod_id

